de.bsvrz.ste.stealgsba.algorithmen.lkwueberholverbotsichtwochentag
Class LkwUeberholverbotSichtWochentagUe

java.lang.Object
  extended by de.bsvrz.ste.stealgsba.algorithmusrahmen.Ursacheneinheit
      extended by de.bsvrz.ste.stealgsba.algorithmusrahmen.UrsacheneinheitErweiterung
          extended by de.bsvrz.ste.stealgsba.algorithmen.lkwueberholverbotsichtwochentag.LkwUeberholverbotSichtWochentagUe
All Implemented Interfaces:
de.bsvrz.dav.daf.main.ClientReceiverInterface, de.bsvrz.dav.daf.main.ClientSenderInterface

public class LkwUeberholverbotSichtWochentagUe
extends de.bsvrz.ste.stealgsba.algorithmusrahmen.UrsacheneinheitErweiterung
implements de.bsvrz.dav.daf.main.ClientReceiverInterface

Klasse implementiert die Funktionalität der Situationsbearbeitung für einen Algorithmus.

Verwaltung der für die Situationsbestimmung notwendigen Parameter und Eingangswerte.

Version:
$Revision: 1.1 $ / $Date: 2015/08/26 13:35:37 $ / ($Author: Asal $)
Author:
Swarco Traffic Systems GmbH, Matthias Obert

Field Summary
private  de.bsvrz.dav.daf.main.config.Aspect m_aspAnalyse
          Aspekt für den Versand der Analysedaten.
private  de.bsvrz.dav.daf.main.config.Aspect m_aspektPrognose
          Aspekt für den Empfang der Prognosedaten.
private  de.bsvrz.dav.daf.main.config.Aspect m_aspParameter
          Aspekt für den Empfang der globalen Parameter.
private  de.bsvrz.dav.daf.main.config.AttributeGroup m_atgAnalyse
          Attributgruppe für den Versand der Analysedaten der Situationsbestimmung.
private  de.bsvrz.dav.daf.main.config.AttributeGroup m_atgParameter
          Attributgruppe für den Empfang der Parameter Lkw-Überholverbot Sicht.
private  de.bsvrz.dav.daf.main.config.AttributeGroup m_atgParameterMqZuordnung
          Attributgruppe für den Empfang der Parameter Zuordnung Messquerschnitt.
private  de.bsvrz.dav.daf.main.config.AttributeGroup m_atgParameterUfdsZuordnung
          Attributgruppe für den Empfang der Parameter Zuordnung Umfelddatensensor.
private  boolean m_betrmVersendet
          Kennung, ob die Betriebsmeldung schon versenndet wurde.
private static de.bsvrz.sys.funclib.debug.Debug m_debug
          Stellt Methoden für die Debugausgabe zur Vefügung.
private  boolean m_fehlerEreignis
          Kennung, ob bei der Ereignisbestimmung ein Fehler aufgetreten ist.
private  java.util.Map<java.lang.String,de.bsvrz.ste.stealgsba.algorithmen.lib.Ereignis> m_mapEreignis
          In dieser HashMap sind die zu berücksichtigenden Ereignisse abgelegt.
private  java.util.HashMap<java.lang.String,de.bsvrz.ste.stealgsba.algorithmen.lib.MessQuerschnitt> m_mapMessQuerschnitte
          Speicher für die Objekte zur Verwaltung der Messquerschnittsdaten.
private  java.util.HashMap<java.lang.String,de.bsvrz.ste.stealgsba.algorithmen.lib.UmfeldDatenSensor> m_mapUmfeldDatenSensor
          Speicher für die Objekte zur Verwaltung der Umfelddatensensordaten.
private  java.util.List<de.bsvrz.dav.daf.main.config.SystemObject> m_mqZuordnungAlt
          Zuordnung Messquerschnitt Alt.
private  de.bsvrz.dav.daf.main.config.SystemObject m_objekt
          Systemobjekt der Ursacheneinheit.
private  ParameterLkwUeberholverbotSichtWochentag m_parameter
          Parameter für die Situationsbestimmung Lkw-Überholverbot Sichtbehinderungen.
private  de.bsvrz.ste.stealgsba.algorithmen.lib.ParameterMqZuordnung m_parameterMqZuordnung
          Parameter Zuordnung Messquerschnitt.
private  ParameterUfdsZuordnung m_parameterUfdsZuordnung
          Parameter Zuordnung Umfelddatensensor.
private  de.bsvrz.ste.stealgsba.algorithmen.lib.PassivierungFahrstreifen m_passivierungFahrStreifen
          Liste der passivierten Fahrstreifen.
private  java.util.List<de.bsvrz.dav.daf.main.config.SystemObject> m_ufdsZuordnungAlt
          Zuordnung Umfelddatensensor Alt.
 
Fields inherited from class de.bsvrz.ste.stealgsba.algorithmusrahmen.Ursacheneinheit
m_aspektVersand, m_connection, m_dataModel
 
Fields inherited from interface de.bsvrz.dav.daf.main.ClientSenderInterface
START_SENDING, STOP_SENDING, STOP_SENDING_NO_RIGHTS, STOP_SENDING_NOT_A_VALID_SUBSCRIPTION
 
Constructor Summary
LkwUeberholverbotSichtWochentagUe(de.bsvrz.dav.daf.main.ClientDavInterface connection, de.bsvrz.dav.daf.main.config.SystemObject ue, de.bsvrz.dav.daf.main.config.Aspect aspektVersand, java.lang.String aspektPrognose)
          Konstruktor mit Übernahme der Parameter.
 
Method Summary
 boolean berechnen()
          Diese Methode berechnet die aktuelle Situation der Ursacheneinheit entsprechend den empfangenen Parametern und versendet die Analysedaten über den Datenverteiler..
private  int bestimmeAnzFahrstreifenAktuell(de.bsvrz.ste.stealgsba.algorithmen.lib.MessQuerschnitt mq)
          Diese Methode bestimmt die Anzahl der aktuell am Messquerschnitt vorhandenen Fahrstreifen abzüglich der logisch passivierten Fahrstreifen.
private  de.bsvrz.dav.daf.main.config.SystemObject bestimmeEreignisTyp(de.bsvrz.dav.daf.main.config.SystemObject objekt)
          Bestimmt den Ereignistyp des übergebenen Ereignisses.
private  boolean bestimmeKriteriumMq(boolean einschaltKriterium, boolean ausschaltKriterium, boolean statusAkt)
          Diese Methode bestimmt aus dem übergebenen Ein-/Ausschaltkriterium und dem aktuellen Status der Ursacheneinheit den neuen Status und gibt ihn zurück.
private  void erzeugeObjekteMessQuerschnitt()
          Diese Methode erzeugt aus der Liste der zugeordenten Messquerschnitte die Objekte für die Verwaltung der Onlinedaten.
private  void erzeugeObjekteOnlineDaten()
          Diese Methode erzeugt aus dem empfangenen Parameter die Objekte für die Verwaltung der Onlinedaten.
private  void erzeugeObjekteUmfeldDatenSensoren()
          Diese Methode erzeugt aus der Liste der zugeordenten Umfelddatensensoren die Objekte für die Verwaltung der Onlinedaten.
private  boolean isEreignisGültig()
          Prüft, ob in der Liste der zu berücksichtigenden Ereignisse ein Ereignis zeitlich gültig ist.
private  boolean isFahrstreifenPassiviert(de.bsvrz.dav.daf.main.config.SystemObject fs)
          Prüft, ob der übergebene Fahrstreifen logisch passiviert ist.
private  void sendeAnalyseDaten(de.bsvrz.ste.stealgsba.algorithmen.lib.SituationAnalyseMq analyse)
          Diese Methode versendet die Analysedaten der Situationsbestimmung über den Datenverteiler.
 void update(de.bsvrz.dav.daf.main.ResultData[] results)
           
 void updatePassivierungFahrstreifen(de.bsvrz.dav.daf.main.ResultData rdata)
          Übernahme der übergebenen Daten bzgl. der Passivierten Fahrstreifen in die Klassenvariable m_passivierungFahrStreifen.
 
Methods inherited from class de.bsvrz.ste.stealgsba.algorithmusrahmen.UrsacheneinheitErweiterung
addListener, datenAnmelden, gibUrsacheneinheitStatus, removeListener
 
Methods inherited from class de.bsvrz.ste.stealgsba.algorithmusrahmen.Ursacheneinheit
alleDatenAbmelden, dataRequest, empfaengerAbmeldenObjekt, empfaengerAnmeldenObjekt, getAspektVerwendung, getMassnahme, getObjekt, getPid, getStatus, getStatusBeruecksichtigung, isBearbeitung, isMindeststandzeitAlsNachlaufzeit, isRequestSupported, isSemiautomatik, quelleAbmeldenObjekt, quelleAnmeldenObjekt, sendeStatus, sendeStatus, setBearbeitung, setMassnahme, setMindeststandzeitAlsNachlaufzeit, setSemiautomatik, setStatus, setStatusBeruecksichtigung, setZyklusLaenge, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

m_debug

private static de.bsvrz.sys.funclib.debug.Debug m_debug
Stellt Methoden für die Debugausgabe zur Vefügung.


m_objekt

private de.bsvrz.dav.daf.main.config.SystemObject m_objekt
Systemobjekt der Ursacheneinheit.


m_atgParameter

private de.bsvrz.dav.daf.main.config.AttributeGroup m_atgParameter
Attributgruppe für den Empfang der Parameter Lkw-Überholverbot Sicht.


m_atgParameterMqZuordnung

private de.bsvrz.dav.daf.main.config.AttributeGroup m_atgParameterMqZuordnung
Attributgruppe für den Empfang der Parameter Zuordnung Messquerschnitt.


m_atgParameterUfdsZuordnung

private de.bsvrz.dav.daf.main.config.AttributeGroup m_atgParameterUfdsZuordnung
Attributgruppe für den Empfang der Parameter Zuordnung Umfelddatensensor.


m_atgAnalyse

private de.bsvrz.dav.daf.main.config.AttributeGroup m_atgAnalyse
Attributgruppe für den Versand der Analysedaten der Situationsbestimmung.


m_aspParameter

private de.bsvrz.dav.daf.main.config.Aspect m_aspParameter
Aspekt für den Empfang der globalen Parameter.


m_aspAnalyse

private de.bsvrz.dav.daf.main.config.Aspect m_aspAnalyse
Aspekt für den Versand der Analysedaten.


m_parameter

private ParameterLkwUeberholverbotSichtWochentag m_parameter
Parameter für die Situationsbestimmung Lkw-Überholverbot Sichtbehinderungen.


m_parameterMqZuordnung

private de.bsvrz.ste.stealgsba.algorithmen.lib.ParameterMqZuordnung m_parameterMqZuordnung
Parameter Zuordnung Messquerschnitt.


m_parameterUfdsZuordnung

private ParameterUfdsZuordnung m_parameterUfdsZuordnung
Parameter Zuordnung Umfelddatensensor.


m_mqZuordnungAlt

private java.util.List<de.bsvrz.dav.daf.main.config.SystemObject> m_mqZuordnungAlt
Zuordnung Messquerschnitt Alt.


m_ufdsZuordnungAlt

private java.util.List<de.bsvrz.dav.daf.main.config.SystemObject> m_ufdsZuordnungAlt
Zuordnung Umfelddatensensor Alt.


m_mapMessQuerschnitte

private java.util.HashMap<java.lang.String,de.bsvrz.ste.stealgsba.algorithmen.lib.MessQuerschnitt> m_mapMessQuerschnitte
Speicher für die Objekte zur Verwaltung der Messquerschnittsdaten.
Key ist die PID des Messquerschnitt.


m_passivierungFahrStreifen

private de.bsvrz.ste.stealgsba.algorithmen.lib.PassivierungFahrstreifen m_passivierungFahrStreifen
Liste der passivierten Fahrstreifen.


m_mapUmfeldDatenSensor

private java.util.HashMap<java.lang.String,de.bsvrz.ste.stealgsba.algorithmen.lib.UmfeldDatenSensor> m_mapUmfeldDatenSensor
Speicher für die Objekte zur Verwaltung der Umfelddatensensordaten.
Key ist die PID der Umfelddatensensor.


m_aspektPrognose

private de.bsvrz.dav.daf.main.config.Aspect m_aspektPrognose
Aspekt für den Empfang der Prognosedaten.


m_mapEreignis

private java.util.Map<java.lang.String,de.bsvrz.ste.stealgsba.algorithmen.lib.Ereignis> m_mapEreignis
In dieser HashMap sind die zu berücksichtigenden Ereignisse abgelegt. Key ist die Pid des Ereignisses.


m_fehlerEreignis

private boolean m_fehlerEreignis
Kennung, ob bei der Ereignisbestimmung ein Fehler aufgetreten ist.


m_betrmVersendet

private boolean m_betrmVersendet
Kennung, ob die Betriebsmeldung schon versenndet wurde.

Constructor Detail

LkwUeberholverbotSichtWochentagUe

public LkwUeberholverbotSichtWochentagUe(de.bsvrz.dav.daf.main.ClientDavInterface connection,
                                         de.bsvrz.dav.daf.main.config.SystemObject ue,
                                         de.bsvrz.dav.daf.main.config.Aspect aspektVersand,
                                         java.lang.String aspektPrognose)
Konstruktor mit Übernahme der Parameter.

Anmelden zum Empfang der benötigten Parameter am Datenverteiler.

Parameters:
connection - Aktuelle Verbindung zum Datenverteiler.
ue - Ursacheneinheit.
aspektVersand - Aspekt für den Versand.
Method Detail

berechnen

public boolean berechnen()
Diese Methode berechnet die aktuelle Situation der Ursacheneinheit entsprechend den empfangenen Parametern und versendet die Analysedaten über den Datenverteiler..


bestimmeAnzFahrstreifenAktuell

private int bestimmeAnzFahrstreifenAktuell(de.bsvrz.ste.stealgsba.algorithmen.lib.MessQuerschnitt mq)
Diese Methode bestimmt die Anzahl der aktuell am Messquerschnitt vorhandenen Fahrstreifen abzüglich der logisch passivierten Fahrstreifen.

Parameters:
mq - Klasse Messquerschnitt.
Returns:
aktuelle Anzahl der Fahrstreifen des Messquerschnitt.

isFahrstreifenPassiviert

private boolean isFahrstreifenPassiviert(de.bsvrz.dav.daf.main.config.SystemObject fs)
Prüft, ob der übergebene Fahrstreifen logisch passiviert ist.

Parameters:
fs - Systemobjekt Fahrstreifen.
Returns:
true wenn Fahrstreifen passiviert, ansonsten false;

bestimmeKriteriumMq

private boolean bestimmeKriteriumMq(boolean einschaltKriterium,
                                    boolean ausschaltKriterium,
                                    boolean statusAkt)
Diese Methode bestimmt aus dem übergebenen Ein-/Ausschaltkriterium und dem aktuellen Status der Ursacheneinheit den neuen Status und gibt ihn zurück.

Parameters:
einschaltKriterium - Status Einschaltkriterium.
ausschaltKriterium - Status Ausschaltkriterium.
statusAkt - Aktueller Status der Ursacheneinheit.
Returns:
true wenn Einschaltkriterium erfüllt, false wenn Ausschaltkriterium erfüllt, ansonsten aktueller Status.

sendeAnalyseDaten

private void sendeAnalyseDaten(de.bsvrz.ste.stealgsba.algorithmen.lib.SituationAnalyseMq analyse)
Diese Methode versendet die Analysedaten der Situationsbestimmung über den Datenverteiler.

Parameters:
analyse - Klasse mit den Analysedaten.

update

public void update(de.bsvrz.dav.daf.main.ResultData[] results)
Specified by:
update in interface de.bsvrz.dav.daf.main.ClientReceiverInterface

erzeugeObjekteUmfeldDatenSensoren

private void erzeugeObjekteUmfeldDatenSensoren()
Diese Methode erzeugt aus der Liste der zugeordenten Umfelddatensensoren die Objekte für die Verwaltung der Onlinedaten.


erzeugeObjekteMessQuerschnitt

private void erzeugeObjekteMessQuerschnitt()
Diese Methode erzeugt aus der Liste der zugeordenten Messquerschnitte die Objekte für die Verwaltung der Onlinedaten.


erzeugeObjekteOnlineDaten

private void erzeugeObjekteOnlineDaten()
Diese Methode erzeugt aus dem empfangenen Parameter die Objekte für die Verwaltung der Onlinedaten.


isEreignisGültig

private boolean isEreignisGültig()
Prüft, ob in der Liste der zu berücksichtigenden Ereignisse ein Ereignis zeitlich gültig ist.

Returns:
true wenn ein Ereignis gültig ist, ansonsten false.

bestimmeEreignisTyp

private de.bsvrz.dav.daf.main.config.SystemObject bestimmeEreignisTyp(de.bsvrz.dav.daf.main.config.SystemObject objekt)
Bestimmt den Ereignistyp des übergebenen Ereignisses.

Returns:
Objekt Ereignistyp.

updatePassivierungFahrstreifen

public void updatePassivierungFahrstreifen(de.bsvrz.dav.daf.main.ResultData rdata)
Übernahme der übergebenen Daten bzgl. der Passivierten Fahrstreifen in die Klassenvariable m_passivierungFahrStreifen.

Parameters:
rdata - Datensatz atg.sswSbaPassivierungFahrStreifen